让指针指着数组中的每一个数地址 然后for循环一次往下指 其中printf为循环体。就 OK了
因为这里用的是%s,p是字符串首地址,而字符串是连续存放的,所以会由首地址的内容自动输出到'\0'前一位,如果用*p就会出错,要么改成%c就不会出错,这是规定的。
// // main.c // Pointer_search // // Created by ma c on 15/8/2. // Copyright (c) 2015年. All rights reserved. // 要求:通过指针查找,实现比较两个有序数组中的元素,输出两个数组中的第一个相同的元素值。 #include <stdio.h> int *searchSameElement(int *a,int *b,int len1,int l...
intmain(){ inta[10],i,max,min,*p;p=a;for(i=0;i<10;i++)cin>>*p++;max=min=a[0];for(p=a;pmax)max=*p;if(*p<min)min=*p;} cout<<"max="<<max<<endl;cout<<"min="<<min<<endl;return0;} 运行效果
s ="hello";printf("pstr = %p\n", pstr);/*输出为字符串起始地址值*//*由于C++标准库中I / O类对 << 操作符重载,因此在遇到字符型指针时会将其当作字符串名来处理,输出指针所指的字符串。 https://blog.csdn.net/u013467442/article/details/43666955 */cout<<"pstr = "<< pstr <<endl;/*输出...
伪代码:for(p=score;p<score+数组长度;p++){printf(“格式控制符”,*p);}
竟然还可以输出? 想必大家都知道C语言中动态开辟内存之后,必须要释放内存,来防止内存泄露。也就是malloc之后,必须要free。正所谓”有借有还,再借不难”, 不少同学会问为什么释放指针后,指向这块内存的指针的值不变呢,我们今天为大家揭秘。 首先,我们用malloc开辟一个内存,用strcpy拷贝一串字符串,然后释放掉,通过...
int main(){ int i,*p,*p_max,*p_min,s,a[N];float avg;printf("请输入%d个数: ",N);p=a;for(i=0;i<N;i++)scanf("%d",p+i);p=a;p_max=a;p_min=a;s=*p;for(i=1;i<N;i++) /*此循环用于找出最大数,最小数的地址,并求出10个数的和*/ { s+=*(p+i);...
1、新建一个工程和.c文件,并且输入主函数和头文件。2、定义全局变量。3、定义变量类型。4、用两个for语句给数组元素赋值。5、调用求最小值的函数。6、函数的总体流程如下图。7、在主函数中输出结果,编译、运行,得到最后结果。
你的程序没问题啊。行号列号都是从0开始的。如果要改的话,只要把组后两句改一下:printf("最大值为:%d,行标:%d,列标:%d\n",max,xb1_h+1,xb1_l+1);printf("最小值为:%d,行标:%d,列标:%d\n",min,xb0_h+1,xb0_l+1);结果就成了这样:...