C语言练习题 普通编程题(60分) 1.(20分)编程实现输出1—100之间能被7整除但不能被3整除的所有偶数, 并求满足该条件的所有数的累加和。 **要求输入提示信息为:无输入提示信息和输入数据 **要求输出格式为:(1)"%5d" (2)"\nsum=%d\n" 2.(20分)从键盘输入10个整型数据,放入数组a 中,求其最大值,并输出。 **要求输入提示信息为:无输入提示信息 **要求输入格式为:"%d" **要求输出格式为:"max=%d\n" 3.(20分)自己定义一个函数,用字符数组作为函数参数的类型, 以实现和函数strlen相同的功能。 要求: (1)按如下函数原型进行编程: int Mystrlen(char str[]); (2)在主函数中: 任意输入一个字符串(长度不超过80个字符); 调用函数Mystrlen()计算输入字符串的实际长度; 然后打印计算结果。 **要求输入提示信息为:"Please input the string:\n" **要求输出格式为:"%d\n" 注意: (1)字符串中的空格计入字符串实际长度, 但是字符串结束标志不计入字符串实际长度。 (2)必须使用函数编程。否则没有成绩。 1.(5分)从键盘任意输入一个字符串(字符串可以有空格), 在给定的一组字符串中寻找该输入字符串, 若找到,则打印该字符串,否则打印"Not find!"。 注意: (1)请将修改正确后的完整源程序拷贝粘贴到答题区内。 (2)对于没有错误的语句,请不要修改, 修改原本正确的语句也要扣分。 (3)当且仅当错误全部改正,且程序运行结果调试正确,才给加5分。 #include #include main() { int i, findFlag = 1; char x; char *str[]={ "Pascal","Basic","Fortran", "Java","Visual C", "Visual Basic" }; printf("Input string:\n"); gets(x); while (i<6 && !findFlag) { if (x=str[i]) { findFlag = 0; } i++; } if (!findFlag) { printf("%s\n",x); } else { printf("Not find!\n"); } } 2.(5分)从键盘任意输入两个整数,编程实现将其交换后再重新输出。 注意: (1)请将修改正确后的完整源程序拷贝粘贴到答题区内。 (2)对于没有错误的语句,请不要修改, 修改原本正确的语句也要扣分。 (3)当且仅当错误全部改正,且程序运行结果调试正确,才给加5分。 #include void Swap(int x, int y) int main() { int a, b; printf("Please enter a,b:"); scanf("%d,%d", a, b); printf("Before swap: a = %d, b = %d\n", a, b); Swap(a, b); printf("After swap: a = %d, b = %d\n", a, b); return 0; } void Swap(int *x, int{ int *temp; *temp = *x; *x = *y; *y = *temp; } *y); 本文来源:https://www.wddqw.com/doc/6075f12eccbff121dd3683d8.html