图片-有关C语言数组的一个小问题

问题描述

有关C语言数组的一个小问题


这是题目

这是我做的 但是不知道为什么我这个写出来只能完成一半 那个“不存在”的提醒不管什么情况都会显示出来 想请教一下啊 谢谢了

解决方案

首先i应该从0开始赋值,否则就会把a[0]也就是T漏掉。其次,判断不存在应该是所有位置都找过以后以后才能判断确实不存在,而不是每个位置都在判断。
具体做法是把不存在的输出放在循环体外面进行判断,然后增加一个变量t并赋初值为0,在找到的时候让t的值变为1,这样一来可以明白:在循环完成之后如果t的值为1就说明找到了,为0就说明不存在,也就是循环体外面应该写如果t等于0就输出不存在。

解决方案二:

代码的逻辑有问题。当循环体中的 i 是 1时,会执行到“不存在”的语句。当 i 的初值为0时,就会打印出2个不存在。

解决方案三:

不可以这样写,你想想,你输入的i时,和第一个字符比较,不相同,就会输出不存在,每一次比较,如果不相同都会输出 不存在,所以,你应该在判定所有字符都不符合时再输出不存在,手机打,希望可以帮助你

解决方案四:

我看看。。。。。。。。。。。。。。。。。

解决方案五:

解决方案六:

你可以参照这个。原程序1,i的初值应该为0;2,i遍历完数组后也会执行else。

解决方案七:

C语言中一个小问题
关于《c语言的一个小问题》的补充
数组--C语言中关于数组的小问题

解决方案八:

代码的逻辑有问题。当循环体中的 i 是 1时,会执行到“不存在”的语句。当 i 的初值为0时,就会打印出2个不存在。

解决方案九:

在纸上画下流程图,重理下逻辑。

时间: 2024-11-08 19:06:19

图片-有关C语言数组的一个小问题的相关文章

c语言-有关C语言数组的一个小问题

问题描述 有关C语言数组的一个小问题 char paidian; paidian = "34567890JQKA2"[(num - 1) / (4 * JIFUPAI)]; 解决方案 C语言中一个小问题c语言中的一个小问题关于<c语言的一个小问题>的补充 解决方案二: 你这个paidian什么意思?"34567890JQKA2"是字符串[(num - 1) / (4 * JIFUPAI)]似乎是个数字?这个没看懂也不知道你的问题是啥 解决方案三: 难道是

c语言-C语言数组的一个小问题

问题描述 C语言数组的一个小问题 题目如图 请问为何我把循环条件设为x[i]!=''的时候,出来的答案就非常大?设为i< 10时,答案就正常了.难道这题x[i]!=''和i< 10这两个条件不等价吗?求解 解决方案 x[i]!='' 你的x是double,怎么和''比较. 解决方案二: 以文本形式贴出你的程序 解决方案三: c语言中的一个小问题C语言中一个小问题关于<c语言的一个小问题>的补充 解决方案四: 你的数组不是字符类型,而是double不存在/0 解决方案五: 你的x是d

c语言-C语言求素数一个小问题

问题描述 C语言求素数一个小问题 题目是要求n以内素数的平方根的和,编好了之后怎么运行答案都不对,加了这句选中的语句才对了,请问这句if(j>=k+1)有什么用?在上面一个for循环中j应该是到不了k+1的吧--求详解 解决方案 你的程序写的不好,没有用缩进和正确的换行,结果是自找麻烦,你自己都搞不清楚for和什么语句配对了. 这里有两重循环,外循环是从3~n找素数,内侧是判断i是不是素数 if (k >= i+1)表示,循环走完了,k才会等于i+1,而循环如果提前break表示它可以被整除,

java-关于String[]数组的一个小问题

问题描述 关于String[]数组的一个小问题 1.String[] y = x.toArray(new String[0]); 2.String[] y = new String[0]; y = x.toArray(y); 这两个有什么区别呢?实际效果一样吗?相比而言,哪个更优呢?谢谢! 解决方案 两个区别不大,如果考虑性能,第二种效果比较差. 如果x为一个长度为5的ArrayList. (1)String[] y = new String[0]; 声明了一个变量,y指向一个长度为1的字符数组

c语言-C语言中的一个小问题。。

问题描述 C语言中的一个小问题.. short为16位,long为32位,int为16位是什么意思啊?各位大神帮忙解释一下! 解决方案 上面几位回答的都挺好的,简单的说你可以把他们都理解为存储数字的容器.long肯定能装下最多的,int就少, 除此之外, 就是能不能处理小数点后面数字的问题了,集体情况你可已在写代码的时候试一下,加深印象, 解决方案二: 就是说这种编译器下每种数据类型占用存储的大小.16位就是2个字节. 你可以用sizeof(类型)*8得到.每个编译器不同. 比如你这个int是1

图片-用c语言写出一个行李托运问题

问题描述 用c语言写出一个行李托运问题 解决方案 请教一个C语言问题关于<c语言的一个小问题>的补充 解决方案二: c语言行李托运问题.

C语言数组指针的小例子

1.功能:输入6个学生的5门课程成绩,计算出每个学生的平均分和每门课程的平均分. 2.C语言实现代码:(其实就是用二维数组来实现的,二维数组的引用传递使用数组指针来完成) 复制代码 代码如下: #include <stdio.h> #define STUDENT 5 #define SCORE 6 void input_array(float (*score)[STUDENT]); void avg_score(float (*score)[STUDENT]); void avg_course

C语言数组指针的小例子_C 语言

1.功能:输入6个学生的5门课程成绩,计算出每个学生的平均分和每门课程的平均分.2.C语言实现代码:(其实就是用二维数组来实现的,二维数组的引用传递使用数组指针来完成) 复制代码 代码如下: #include <stdio.h>#define STUDENT 5#define SCORE 6void input_array(float (*score)[STUDENT]);void avg_score(float (*score)[STUDENT]);void avg_course(float

C语言字符串指针的一个小问题

问题描述 C语言字符串指针的一个小问题 题目如图,答案是又定义了一个指针变量做的.而我的答案编译出来结果也对,就是会运行结束之后出现一个警告对话框.不明白怎么回事,第三幅我的答案有什么问题吗?请问如果不用答案的那种编译方法,我的这种方法可不可行?能改进不报错吗? 解决方案 你的程序没有发现问题 #include <stdio.h> void fun(char * a) { int i = 0, j = 0; while (a[i] == '*') i++; for (; a[i] != '';