C语言练习题6-17
写出下面程序的运行结果
这个运行不出来
求看看哪里有问题
实际录入电脑运行一下看结果。
你在main函数里使用之前声明一下fun函数就行了,目测是“ 27”
#include <stdio.h>
int fun(int a);//先在主函数上面声明函数
int main () {
int a=4,s=0,i;
for(i=1;i<=3;i++){
s+=fun(a);
printf("%4d\n",s);
}
}
int fun(int a)//定义函数要在主函数之外
{
static int b=3;
int c=0;
b++;c++;
return a+b+c;
}
书上可能省略了一点
fun()函数里 b 是静态变量,所以主函数里循环三次,调用fun()函数三次,b 的值分别是 4 5 6,而 a 的值始终为 4,c 的值始终为 1 ,所以 s = (4 + 4 +1) + (4 + 5 + 1) + (4 + 6 + 1) = 30
程序运行结果为 30
但这段代码写的有问题,所以你直接照着打是肯定运行不了的
目录
c语言经典练习题目17题5、是比较两个英文字符串的不相同的字符的位置(忽略字母大小写)
6、主函数调用一函数// 如:检索出字符串中出现次数最多的那个字符,不考虑大小写,然后返回该字符。
7、查找字符串中出现次数最多的字符,并返回该字符,只考虑小写字母,不考虑不同字母出现次数一样多的情况
8、输入一个整数n,计算不大于n的数中和7相关的数的个数,包括能被7整出的数和含有字符7的数。
9、输入一个整数将每一位上的奇数放在一个新整数中,高位放在高位,地位在低位。
10、输入一串数,将其最小的放在第一位,次小的放在最后一位,再小的放在第二位,再再小的放在倒数第二位,以此类推
14、将一组整数中为奇数的数提取出来,高低位顺序不变。如:8 3 7 9 5 2 1 4-----》3 7 9 5 1
16、输入一个四位的十进制整数,编程实现将这四位整数转化为十六进制的字符串,并输出十六进制的字符串(注意负数的处理)
17、输入:一个四位的整数,比如:2367,输出:2+3+6+7=18
该程序应该输出"Good job!\n",因为变量grade被赋值为字符'B',匹配到case 'B',调用printf输出"Good job!\n"。因此程序运行结果正确。
无需找出问题所在。