C语言程序函数调用闪退
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言程序函数调用闪退相关的知识,希望对你有一定的参考价值。
#include <stdio.h>#include <stdlib.h>int upk() printf("┏━━━━━━━━━━━━━━━━━━━━━━┓\n"); return 0;int pgk() printf("┗━━━━━━━━━━━━━━━━━━━━━━┛\n"); return 0;int main() int n; int caidan(int n); printf("欢迎使用成绩录入系统,请输入学生人数:"); scanf("%d", &n); system("CLS"); caidan(n);int caidan(int n) int z,r; int lr(int n); int sum(int n); int aver(int n); int rank(int n); r = n; printf("%d",r ); upk(); printf("┃ 欢迎使用学生成绩管理系统 ┃\n"); printf("┃ ┃\n"); printf("┃①学生成绩录入 ┃\n"); printf("┃②学生总分及平均分计算 ┃\n"); printf("┃③课程班级平均分计算 ┃\n"); printf("┃④学生排名 ┃\n"); printf("┃⑨退出程序 ┃\n"); printf("┃请输入相应序号来实现功能,输入无关序号会崩溃 ┃\n"); pgk(); printf("请选择功能:"); scanf("%d", &z); system("CLS"); switch (z) case '1': lr(r); break; case '2': sum(r); break; case '3': aver(r); break; case '4': rank(r); break; case '9': break; return 0;int lr(int n) int a[100][4],i,r; for (i = 0,r=1; i < n; i++,r++) printf("请输入第%d名学生学号:", r); scanf("%d", &a[i][0]); printf("请输入第%d名学生第1门科目成绩:", r); scanf("%d", &a[i][1]); printf("请输入第%d名学生第2门科目成绩:", r); scanf("%d", &a[i][2]); printf("请输入第%d名学生第3门科目成绩:", r); scanf("%d", &a[i][3]); return a[100][4];int sum(int n) int a[100][4],i,b[100]; a[100][4] = lr(n); for (i = 0; i < n; i++) printf("第%d位学生学号为%d", i + 1, a[i][0]); b[i] = a[i][1] + a[i][2] + a[i][3]; printf("总成绩为:%d",b[i]); printf("平均分为:%g", (double)b[i]/3); printf("按回任意键返回菜单"); system("pause"); system("CLS"); return b[100];int aver(int n) int a[100][4], i,s1,s2,s3; a[100][4] = lr(n); for (i = 0, s1 = 0, s2=0, s3=0; i < n; i++) s1 = s1 + a[i][1]; s2 = s2 + a[i][2]; s3 = s3 + a[i][3]; printf("第一门成绩班级平均分为:%d", s1 / n); printf("第二门成绩班级平均分为:%d", s2 / n); printf("第三门成绩班级平均分为:%d", s3 / n); printf("按回任意键返回菜单"); system("pause"); system("CLS"); return 0;int rank(int n) int i = 0, j; double b[100],w; b[100] = sum(n); for (i = 0; i < n; i++) b[i] = b[i] / 3; for (i = 0; i < n; i++) for(j=0;j<n;j++) if (b[i] > b[j + 1]) w = b[j + 1]; b[i] = b[j + 1]; b[j + 1] = b[i]; printf("成绩由大到小排序为:\n"); for (i = 0;i < n; i++) printf("%g\n",b[i]); return 0;求大佬解决。。。
闪退?是调试的时候运行结束闪退吗?如果是的话,在结尾加上 system(“pause”); 参考技术A case数字的引号全部去掉vscode 运行c语言代码 终端闪退
vscode 运行代码 终端闪退
在代码最后加上
system("pause");
以上是关于C语言程序函数调用闪退的主要内容,如果未能解决你的问题,请参考以下文章