为什么我的这个c程序一运行就提示停止工作? 10
#include<stdio.h>#defineSIZE10#defineLONG20voidmeau();voidscore_browse(char*,float*);...
#include<stdio.h>
#define SIZE 10
#define LONG 20
void meau();
void score_browse(char* ,float *);
int main(void)
{
char student_num[SIZE][LONG] = { "20141000", "20141001", "20141002", "20141003", "20141004", "20141005", "20141006" };
float student_score[SIZE] = {91,86,78,76,61,69,81};
int chose;
meau();
scanf("%d", &chose);
switch (chose)
{
case 1:score_browse(student_num, student_score);
}
}
void meau(void)
{
int i;
for (i = 0; i < 18; i++)
printf(" ");
for (i = 0; i < 40; i++)
printf("*");
for (i = 0; i < 18; i++)
printf(" ");
printf("\n");
for (i = 0; i < 34; i++)
printf(" ");
puts("学生成绩管理");
for (i = 0; i < 35; i++)
printf(" ");
puts("1.成绩浏览");
for (i = 0; i < 35; i++)
printf(" ");
puts("2.成绩查询");
for (i = 0; i < 35; i++)
printf(" ");
puts("3.删除成绩");
for (i = 0; i < 35; i++)
printf(" ");
puts("4.添加成绩");
for (i = 0; i < 18; i++)
printf(" ");
for (i = 0; i < 40; i++)
printf("*");
for (i = 0; i < 18; i++)
printf(" ");
printf("\n");
}
void score_browse(char*student_num, float *student_score)
{
int sign;
for (sign = 0; sign < SIZE; sign++)
{
if (student_score[sign] != 0)
{
printf("学号:%s\t", student_num[sign]);
printf("成绩:%f\n", student_score[sign]);
}
}
}
现在正在写第一个功能,可是为什么我一输入1,程序就停止工作了? 展开
#define SIZE 10
#define LONG 20
void meau();
void score_browse(char* ,float *);
int main(void)
{
char student_num[SIZE][LONG] = { "20141000", "20141001", "20141002", "20141003", "20141004", "20141005", "20141006" };
float student_score[SIZE] = {91,86,78,76,61,69,81};
int chose;
meau();
scanf("%d", &chose);
switch (chose)
{
case 1:score_browse(student_num, student_score);
}
}
void meau(void)
{
int i;
for (i = 0; i < 18; i++)
printf(" ");
for (i = 0; i < 40; i++)
printf("*");
for (i = 0; i < 18; i++)
printf(" ");
printf("\n");
for (i = 0; i < 34; i++)
printf(" ");
puts("学生成绩管理");
for (i = 0; i < 35; i++)
printf(" ");
puts("1.成绩浏览");
for (i = 0; i < 35; i++)
printf(" ");
puts("2.成绩查询");
for (i = 0; i < 35; i++)
printf(" ");
puts("3.删除成绩");
for (i = 0; i < 35; i++)
printf(" ");
puts("4.添加成绩");
for (i = 0; i < 18; i++)
printf(" ");
for (i = 0; i < 40; i++)
printf("*");
for (i = 0; i < 18; i++)
printf(" ");
printf("\n");
}
void score_browse(char*student_num, float *student_score)
{
int sign;
for (sign = 0; sign < SIZE; sign++)
{
if (student_score[sign] != 0)
{
printf("学号:%s\t", student_num[sign]);
printf("成绩:%f\n", student_score[sign]);
}
}
}
现在正在写第一个功能,可是为什么我一输入1,程序就停止工作了? 展开
2个回答
展开全部
#include <stdio.h>
#include <string.h>
int main()
{
char a[100],b[100],c[100];
printf("请输入一个字符串:");
scanf("%s",a);
//接收回车
getchar();
int i,j;
i=strlen(a);
for(j=0;j<=i;j++){
//x2容易超出128,所以不如+上某个数
b[j]=a[j]+10;
}
//字符串结束
b[j]='\0';
printf("加密后的字符串是%s\n",b);
printf("加密前的字符串是%s\n",a);
}
//输入必须是连续的英文字母串,不能出现空格,回车等其它字符
#include <stdio.h>
#include <string.h>
int main()
{
const float EPSINON=0.000000001;
char a[100];
float b[100];
int num[100],i,j;
printf("请输入一个字符串:");
scanf("%s",a);
//接收回车
getchar();
i= strlen(a);
printf("i=%d\n",i);
for(j=0;j<=26;j++)
{
num[a[j]-'a']++;
}
for(j=0;j<=26;j++)
{
//浮点数的运算,需要先把数据转换为浮点数
b[j]=(float)num[j]/(float)i;
//浮点数与0的比较
if(b[j]>=-EPSINON&&b[j]<=EPSINON){
continue;
}
else
{
printf("%c出现的频率是%f\n",'a'+j,b[j]);
}
}
return 1;
}
#include <string.h>
int main()
{
char a[100],b[100],c[100];
printf("请输入一个字符串:");
scanf("%s",a);
//接收回车
getchar();
int i,j;
i=strlen(a);
for(j=0;j<=i;j++){
//x2容易超出128,所以不如+上某个数
b[j]=a[j]+10;
}
//字符串结束
b[j]='\0';
printf("加密后的字符串是%s\n",b);
printf("加密前的字符串是%s\n",a);
}
//输入必须是连续的英文字母串,不能出现空格,回车等其它字符
#include <stdio.h>
#include <string.h>
int main()
{
const float EPSINON=0.000000001;
char a[100];
float b[100];
int num[100],i,j;
printf("请输入一个字符串:");
scanf("%s",a);
//接收回车
getchar();
i= strlen(a);
printf("i=%d\n",i);
for(j=0;j<=26;j++)
{
num[a[j]-'a']++;
}
for(j=0;j<=26;j++)
{
//浮点数的运算,需要先把数据转换为浮点数
b[j]=(float)num[j]/(float)i;
//浮点数与0的比较
if(b[j]>=-EPSINON&&b[j]<=EPSINON){
continue;
}
else
{
printf("%c出现的频率是%f\n",'a'+j,b[j]);
}
}
return 1;
}
追问
??
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询