c语言编写一个函数,没有报错,但是无法运行,请帮忙指出原因所在,谢谢 编写一个二维数组的C语言程序,编译时没有错误,但是没法运行,...

C\u8bed\u8a00\u4e00\u4e2a\u7a0b\u5e8f\u6ca1\u62a5\u9519\uff0c\u4f46\u662f\u8fd0\u884c\u4e86\u6ca1\u53cd\u5e94\uff0c\u4e0b\u9762\u662f\u7a0b\u5e8f

\u5144\u5f1f\u5e94\u8be5\u662f\u624d\u5b66\u7684\u5427,\u6307\u51fa\u7a0b\u5e8f\u4e2d\u7684\u51e0\u4e2a\u9519\u8bef,
1\u3001main\u51fd\u6570\u4e0d\u5e94\u8be5\u7684\u8fd4\u56de\u503c,\u5982\u679c\u60f3\u8ba9\u5b83\u505c\u4f4f\u7684\u8bdd\uff0c\u5199while(1);\u5426\u5219\u76f4\u63a5\u7ed3\u675f
2\u60f3\u8fd4\u56de\u4f4d\u7f6e\u7684\u8bdd,\u51fd\u6570string_in\u8981\u5b9a\u4e49\u4e3a char string_in(char *str,char * str1)
3 \u5b50\u51fd\u6570\u4e2d\u7684while(1)\u4f1a\u5bfc\u81f4\u6b7b\u5faa\u73af,\u4f7f\u7a0b\u5e8f\u65e0\u6cd5\u9000\u51fa,\u5e94\u8bbe\u7f6e\u9000\u51fa\u6761\u4ef6,\u5c3d\u53ef\u80fd\u4f7f\u7528FOR\u5faa\u73af,
4 \u4f7f\u7528\u6307\u9488\u7684\u64cd\u4f5c\u5e94\u8be5\u5199
*str!=*str1;
str1++;
str1[0]++\u7684\u8bdd\u4f1a\u4f7f\u5b57\u7b26\u4e32\u4e2d\u7684\u5b57\u7b26\u52a0\u4e00,\u53d8\u6210"bt"
char i,a,b;
char findflg;
a=0;
b=0;
findflg=0;
len1=strlen(str);
len2=strlen(str1);
for (i=0; i<=len1&findflg==0;i++)
{
if(*str==*str1)
{
while(str[a]==tr1[b] &a+i<len1 &b+i<len2)
{
a++;
b++;
}
if (b+i==len2)
findflg=1;
str++;
str1++;
}
}
\u968f\u4fbf\u5199\u7684,\u53ef\u80fd\u6709\u9519,\u4f60\u518d\u8c03\u4e00\u4e0b\u5427

//\u8f93\u51fa\u90e8\u5206\u672a\u5199#include #include int main(int argc, char *argv[]) {int a[22][5]={0};int i,j,k,n,flag=0;for(n=0;n<500;n++){printf("\n\u73b0\u5728\u8f93\u5165\u7684\u662f\u7b2c%d\u4efd\u95ee\u5377",n+1);for(i=0;i<22;i++){printf("\n\u8bf7\u8f93\u5165\u7b2c%d\u9053\u9898\u7684\u7b54\u6848\uff1a",i+1);fflush(stdin);scanf("%d",&k);if(k==0){flag=1;break;}a[i][k]++;}if(flag==1){break;}}return 0;}

在main函数中,

fun(a, b, 4);

第一个参数a是字符串常量,其内容是不能修改的

而在函数fun函数中,

while(a[n] != '\0')
{
    for(i = n; a[i] != '\0'; i++)
        a[i+1] = a[i];    //该语句修改了字符串a的内容
}

修改了第一个字符串指针指向的内容,因此运行时会出错

另外fun函数这么写可以实现你想要的功能

void fun(const char *a, char *b, int n){
int i, j;
for(i = 0, j = 0; a[i]; i++){
if(i == n) continue;
b[j++] = a[i];
}
b[j] = 0;
}


//输出部分未写
#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[]) 
{
int a[22][5]={0};
int i,j,k,n,flag=0;
for(n=0;n<500;n++)
{
printf("
现在输入的是第%d份问卷",n+1);
for(i=0;i<22;i++)
{
printf("
请输入第%d道题的答案:",i+1);
fflush(stdin);
scanf("%d",&k);
if(k==0)
{
flag=1;
break;
}
a[i][k]++;
}
if(flag==1)
{
break;
}
}
return 0;
}



  • 鐢╟璇█缂栧啓涓涓嚱鏁,棰樼洰濡備笅
    绛旓細void fun(int m, int k, int xx[]){ int i,j,a=0,num=0; while(1) { m=m+1; for(j=2;j<m;j++) { if(m%j==0) break; } if(j>=m) { xx[a++]=m; num++; } if(num==k) break; } } ...
  • ...鎶鍑芥暟鍐鍦ㄤ富鍑芥暟鍚庨潰,浣嗘病鍦ㄤ富鍑芥暟鍐呭0鏄,鍗娌℃湁鎶ラ敊?
    绛旓細鑰娌℃湁include杩涙潵鐨勫氨浼氬湪鏈洰褰曚笅妫绱紝鍋囧妫绱笉鍒板氨缂栬瘧鍑洪敊銆傚簱鍑芥暟鎵鍦ㄥ氨鐩稿綋浜庤佸湴鏂癸紝鑰宮ain鍑芥暟鎵鍦ㄧ殑鍦版柟灏辩浉褰撲簬鏈湴锛岃繖涓や釜閮芥槸琚紪璇戝櫒鐔熺煡鐨勩傚叾瀹為櫎浜c璇█锛java涔熶細杩欐牱锛屼笉鍦ㄥ悓涓涓鍖呭唴鐨勭被闇瑕佸鍏ワ紝鍦ㄥ悓涓涓寘閲岄潰鐨勭被涓嶉渶瑕佸鍏ワ紙import锛夛紝鍦ㄥ悓涓涓猨ava鏂囦欢閲岄潰鐨勭被锛堝唴閮ㄧ被...
  • ...涓嶇粰鍑芥暟鍘熷瀷澹版槑,鎬庝箞娌℃湁鎶ラ敊?!鎴戣瘯浜嗗嚑娆,鐢ㄧ殑codeblocks銆俖鐧惧害...
    绛旓細涓嶈繃鐢变簬鏀寔C99鐨勭紪璇戝櫒鍙湁鏋佸皯鏁(濡俤ev銆乬cc绛)锛屽ぇ澶氭暟鐨凜缂栬瘧鍣(灏ゅ叾鏄祵鍏ュ紡缂栬瘧鍣)浠嶄娇鐢–89鏍囧噯锛屽洜姝わ紝濡傛灉浣犲笇鏈涗綘鐨勭▼搴忔湁鏇村ソ鐨勫吋瀹规э紝杩樻槸閬典粠C89鐨勬爣鍑嗗啓涓婂嚱鏁板0鏄庤鍙ュ惂 鍙﹀闇瑕佹彁绀轰竴鐐癸細濡傛灉浣犲畾涔夌殑鍑芥暟杩斿洖鍊兼槸int绫诲瀷锛孋89涔熶笉闇瑕佸0鏄庡氨鍙互浣跨敤姝鍑芥暟锛杩欐槸鐗规畩鎯呭喌(鎴戜及璁...
  • C璇█缂栧啓涓涓鏃犺繑鍥炲鍑芥暟copy(),瀹冧互涓や釜瀛楃鍨嬩负褰㈠紡鍙傛暟,
    绛旓細銆奣he C Programe Language銆 鎺ㄨ崘妤间富涔颁竴鏈ソ濂界湅鐪 琛ュ厖涓涓嬶細杩欐湰涔︽垜姣忕湅涓閬嶉兘鏈夋柊鐨勬敹鑾凤紝缁忓吀涓殑缁忓吀锛屼腑鏂囪瘧鍚嶃C缂栫▼璇█銆嬶紝鐧惧害涓涓嬶紝鐪嬬湅浣滆呮潵澶村氨鐭ラ亾鍚噺浜嗐備互涓嬪紩鑷功涓竴娈电▼搴忥紝鍏朵腑鍖呭惈涓変釜鐗堟湰锛歷oid strcpy(char *s ,char *t){ while(*s++ = *t++);} PS锛氳繖涓...
  • ...娆℃暟C璇█(鑷繁鍐欎簡涓涓,涓鎻掑叆鍒颁富鍑芥暟,娌℃湁鎶ラ敊灏辨槸涓杩愯绋嬪簭灏变細...
    绛旓細鍦ㄦ垜娌℃湁鐪嬪埌main鍑芥暟鐨勬儏鍐典笅锛涢鍏坅[]杩欎釜鏁扮粍鐨勮竟鐣屾垜鐪嬩笉鍒板闀匡紱鍏2: i娌℃湁鐪嬪埌鍒濆鍖栧氨寮濮嬩娇鐢ㄤ簡
  • 涓閬C璇█缂栫▼棰 棰樻剰鏄緭鍏20涓暟,鍓旈櫎鏈澶ф渶灏忓,鍦ㄨ緭鍑恒傝嚜宸辩悽纾ㄧ紪...
    绛旓細璇风湅涓嬮潰鏈夋敞閲婄殑鍖哄煙锛氾紙鍏辨湁4澶閿欒锛鏀瑰畬灏辨纭簡锛塱nclude<stdio.h> int findmax(int a[],int k){ int i,max;max=a[0];for(i=0;i<k;i++){ if(max<a[i])max=a[i];} return max; //杩欓噷搴旇杩斿洖鏈澶у } int findmin(int a[],int k){ int i,min;min=a[0];...
  • C璇█,灏忕▼搴娌℃湁閿欒,浣嗘槸杩愯涓嶄簡銆
    绛旓細int a,int b){ return (a*b/r);} 甯綘淇敼浜嗕竴涓 1,鍑芥暟鐨勫0鏄鍐鍦╩ain鍑芥暟鐨勫闈紝濡傛灉鏈夊弬鏁帮紝璇锋妸鍙傛暟鍐欏嚭鏉ワ紝涓嶈鍙啓鍙傛暟绫诲瀷锛2.鐓т綘閭d釜鍐欐硶锛宺鐨勫兼案杩滀负0锛0鏄笉鍙互鎴愪负闄ゆ暟鐨勶紝涔嬫墍浠ュ紓甯告椂鍥犱负0琚敤浣滈櫎鏁般傝繍琛岀粨鏋滐細鍑芥暟鏄笉鏄啓鍙嶄簡锛岃繍琛岀粨鏋滄槸杩欐牱鐨勫悧锛熸湁鐐规鐤戙
  • c璇█绋嬪簭璁捐璇缂栧啓涓涓嚱鏁fun,瀹冪殑鍔熻兘鏄:灏唖s鎵鎸囧瓧绗︿覆涓墍鏈変笅...
    绛旓細include <stdio.h> include <string.h> int main(){ int i;char ss[20];printf("璇疯緭鍏ュ瓧绗︿覆锛歕n");scanf("%s",ss);for(i=0;i<strlen(ss);i++){ if (i%2!=0){ if(ss[i]>='a')ss[i]=ss[i]-32;} } printf("%s\n",ss);return 1;} ...
  • C璇█缂栫▼鏃剁紪璇娌℃湁閿欒,杩愯鏃跺嵈鏄剧ず鏈変竴涓敊璇銆備负浠涔?
    绛旓細涓娌℃湁鍐max鍑芥暟鐨勫叿浣撳畾涔夛紝鍦ㄤ富鍑芥暟涓張瑕佷娇鐢ㄨ繖涓鍑芥暟锛绯荤粺鎵句笉鍒帮紝鑷劧灏遍敊浜嗐備綘鎶妋ax鍑芥暟鐨勫畾涔夊啓鍏ㄤ簡锛屽氨娌′簨浜嗐
  • C璇█娌杈撳嚭,涓轰粈涔,涔娌℃湁鎶ラ敊鍟
    绛旓細// 鎰熻闂寰堝ぇ鍛锛岀矖鐣ヤ慨鏀逛簡涓嬶紝搴旇姝g‘浜嗐#include <stdio.h>#include <stdlib.h>#include <string.h>//瀛楃涓插ご鏂囦欢#define M 50 //鍗曡瘝闄愬埗闀垮害#define N 50 //鍗曡瘝涓暟char word[N][M];//瀹氫箟涓涓鏁扮粍鐢ㄤ簬瀛樻斁鍗曡瘝void kuai(int left, int right, char word[][M]);int main(...
  • 扩展阅读:c++编程适合几岁学 ... c++中<< ... c++和python先学哪个 ... c语言常用的32个关键字 ... c++编程 ... c语言标准库函数大全 ... c++适合多大的孩子学 ... c++和java哪个好就业 ... 学编程的最佳年龄 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网