在C语言编程中,我们可以通过输入一组整数来完成一个简单的任务,这个过程使用-1作为输入结束的标志。首先,我们需要定义一个数组来存储输入的整数,并且需要一个计数器来记录输入的个数。这里我们使用数组s来接收输入的整数,同时使用变量m来记录输入的个数。接下来,我们进入一个循环,该循环将一直执行,...
既然你说要用数组,那就必须定一个上限长度。define MAX 100 include<stdio.h> include<stdlib.h> include<malloc.h> int main(void){ float a[MAX],d;int i,j;for(i=0;;i++){scanf("%f",a+i);if(a[i]==-1)break;} scanf("%f",&d);for(j=0;j<=i;j++)if(a[j]==d...
我只用指针地址距离数组初始地址的差值作为计数的变量。不习惯这么写的朋友可以定义 int i之类的变量。
a[n] 定义是一个有符号的数组,a[n]= -1 就是将 -1赋值给a[n]若a[n]定义为一个无符号数,可能编译会出错,也可能将最大取值-1后 送个a[n],也可能完全没问题,需要放到编译环境中测试一下
这次准备好好了解一下。以前不知道数组的下标还可是负数。这次是长见识了。 那么如何用c[-1]访问另一个数组的第一个元素呢? 其实很简单 利用指针即可。 int *c; c=arr+1; 这样c[-1]指向的就是arr[0],不管怎么样 ,是明白了有c[-1]这回事。
C语言计算中得出-1.#indoo的原因是溢出类问题 C语言计算中得出-1.#indoo的原因一般有两类 第一类:数组下标溢出问题,例如数组出现负数的下标 第二类:数据类型上面的溢出,你如果求幂或者费伯拉西数列的时候,项数大很容易引发溢出,float类型数据溢出就报-1.#indoo这个错误.include <stdio.h> main() {...
初学还是自己编编看比较好 给你讲大概思路 设一个数组,输入的数存到数组中 另设一个变量,设第一个数为初始值,以后每输入一个和这个比较一下,如果新数据大的换,把新的赋值,输出你就输出数组,直到-1 输出你设的变量 是最大值
比如说a[2][2],行减去1,直接a[2-1][2].
include <stdio.h>int main(void){int n,pcnt,ncnt,zcnt,psum,nsum;for(pcnt=ncnt=zcnt=psum=nsum=0;scanf("%d",&n)==1&&n!=-1;){if(n>0){pcnt++;psum+=n;}else{if(n<0){ncnt++;nsum+=n;}else{zcnt++;}}}printf("%d %d %d\n",pcnt,zcnt,ncnt);printf("%d ...
在程序中直接赋为1是不可能的 因为1的十六进制是 00 00 00 01 memset只能赋予一样的数值 比如 memset(a,0xFF,80*sizeof(int));或 memset(a,-1,80*sizeof(int));就是赋为-1 memset(a,0,80*sizeof(int));就是赋为0