C语言题目 求大佬帮看一下

供稿:hz-xin.com     日期:2025-01-12
求大佬帮忙告诉一下这个c语言题的过程 小白一枚

这个程序的运行结果可以有两种方法得出,一是模拟运行。第二种办法是看懂函数fun的功能。
这个函数的功能是把数组中从下标n1开始到n2为止的这一段数组元素进行逆置存放。然后就按着这个方法对整个数组进行三次的函数调用。所以最后的结果,他实际是把A数组中下标从0到3的元素移到数组的后段,应该选择答案C。

这个程序实现的原理是:

循环将非数字字符移动到字符串的开头,然后最后一个非数字字符后面添加一个结束符号0(这样输出的时候字符串只会输出到0的位置,后面的数字就不打印了。)
1、scanf("%s",&str);肯定是错的,str是数组名,表示数组首地址,应该直接写scanf("%s",str);或者写scanf("%s",&str[0]);
2、16行就是我上面说的添加结束符号,要是删除的话,那么打印输出的时候会连同后面数字字符一起输出,就起不到删除数字的做用。

首先说一下题目的答案是:11

程序运行了一下, 截图如下:

下面解析一下原因:

1、根据判断条件来看,当 k = 10时, while 条件不成立。

2、但是需要注意的一点是,在while条件中,使用的是 K++, 而++符号在后面。

3、++运算符使用有两种, 先+1在用, 和先使用在+1。而此处使用的明明是后者。

4、++在后, 变量k==10时,在判断不成立后, 会在进行+1运算,所以最后结果为11。

以上是我对这道题目的解析, 如果对你有帮助,请采纳一下, 谢谢。



当k等于9时,k++,k变为10,10不小于10,循环跳出,k=10

当然是十了,因为是小于十,所以不会到11的,等于十的时候就跳出循环了

应该是11,答案可能有问题

用编译器运行一下不就知道了吗?

C语言题目 求大佬帮看一下
首先说一下题目的答案是:11 程序运行了一下, 截图如下:下面解析一下原因:1、根据判断条件来看,当 k = 10时, while 条件不成立。2、但是需要注意的一点是,在while条件中,使用的是 K++, 而++符号在后面。3、++运算符使用有两种, 先+1在用, 和先使用在+1。而此处使用的明明是后者。4...

求大佬帮我看下这道c语言题
题目有问题 int c[2][3];表示c有2排3列,c语言中数组下标从0记起,c[2][1]相当于c的第3排第2列,属于越界操作,使用了c后面的第2个int 按照一般的规则来说c后面的第二个int应该是j,循环过后j的值为3,打印出来的应该是3 但一些编译器生成的栈中变量的顺序、间隔以及未初始化区域的默认...

求大佬看一下这个C语言题目。要求:根据出生年份判断多名学生属相。求...
int yea8;while(1){ printf("输入年份:");scanf("%d",&year);printf("%d\\r\\n",year%12);switch(year%12+1){ case 0: printf("未羊\\r\\n"); break;case 1: printf("申猴\\r\\n"); break;case 2: printf("酉鸡\\r\\n"); break;case 3: printf("戌狗\\r\\n"); break;case 4:...

c语言题目 求大佬
执行自增\/自减表达式之后,变量的值变为原值+1\/-1。这称为自增\/自减表达式的副作用。例如有变量b=4,执行表达式b++后,b的值变为5。第一道题求的是执行完表达式a++和b++后变量a和b的值,而第二道题求的是表达式m--的值。

c语言问题,麻烦大佬帮忙看看
x是输出十六进制数的意思,故题目需要你进行十六进制运算,不过是把十六进制的194与十进制的18相加而已,可以统一转换进制为十六进制,然后运算,不需要进位。运算过程是:0x194+18==0x194+0x12 而 0x194+0x12==0x1A6。下面的watch框是验算

这个c语言题目有点难,求大佬帮忙
您好,很高兴回答您的问题。您说的这个问题,难点就在正确使用\/和%这两个符号。c语言中%只能使用在两个整数之间,且得到的结果也只能是整数,表示的是将前者除以后者后得到的余数,所以叫取余符号。\/表示除号,但是用在两个整数之间时,得到的结果也只能是整数。比如1\/2的结果是0,1%2的结果是1。...

哪位大佬能帮看看这道c语言?
思路:a,b都是默认输入升序的数(题目没要求验证,我的代码也不验证,请按升序输入,如需验证升序输入,只需定义一个变量记录输入的数字,并在下次循环输入时比大小。)所以,定义2个指针分别指向a,b最后一个输入的元素地址,嵌套循环,分别往前移动,同时比较两数组元素,每次找到对应位置就将a移位并...

C语言题目,求大佬解答
被2整除的数有7个,被5整除的数有1个,所以count为8.数组被赋了10个数据,所以K数组的第11个数为0,跳出循环,对应K[10],所以i为10.答案B

c语言简单程序题把我搞糊涂了 求大佬解疑
第一张图片:根据优先级,先算++,但由于加加在后面,所以返回加加前的值,也就是7。再算等号,赋值给sum,此时sum就是7。然后轮到逗号,逗号之后是sum自加,得8。然后再到下一个num自加,但跟sum已经没有关系了。所以答案是8。第二张图片:由于括号的原因,等号优先级低,所以先算括号里的值...

c语言题目,求大佬赐教
int main(){ char grade1;int ifB;printf("请输入等级:");scanf("%c",&grade1);switch(grade1){ case 'A':case 'a': \/\/如果是小写 printf("10万");break;case 'B':case 'b':printf("请再次输入等级:");scanf("%d",&ifB);switch(ifB){ case 1:printf("8万");break;case...