内容正文:
一 . 使用递归方式打印一个整数的每一位
考点: 函数递归的理解,难点在于理解先打印的是1而不是5.
难度: 简单
示例:
输入: 12345
输出: 1
2
3
4
5
#include<stdio.h>
void print(unsigned int n)
{
/*************start*************/
/*************end*************/
}
int main(){
int n;
scanf("%d",&n);
print(n);
}
答案:
if(n>9){
print(n/10);
}
printf("%d
",n%10);
样张1:
二 . 输入两个字符串s1,s2,在s1字符串中找出和s2完全匹配的字串,并返回第一个匹配字串的起始下标
考点: 字符数组的运用和嵌套循环
难度: 难
示例:
输入: ”sadbutsad”
”sad“
输出:0
解释:sad在下标出0和6是完全匹配,第一个完全匹配的下标为0
#include<stdio.h>
#include<string.h>
int findIndex(char *father, char *son)
{
int n1=strlen(father);
int n2=strlen(son);
int i,j,flag;
/*************start*************/
/*************end*************/
return -1;
}
int main(){
int k;
char s1[80],s2[40];
gets(s1);
gets(s2);
k=findIndex(s1,s2);
if(k!=-1){
printf("第一个完全匹配字串下标为
%d
",k);
}else{
printf("字符串中无完全匹配字串");
}
}
答案:
for(i=0;i+n2<=n1;i++){
flag=1;
for(j=0;j<n2;j++){
if(father[i+j]!=son[j]){
flag=0;
break;
}
}
if(flag){
return i;
}
}
样张1:
学科网(北京)股份有限公司
$$