| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 792 人关注过本帖
标题:求解答,这个问题怎么解决?
取消只看楼主 加入收藏
冯jungle
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2012-12-16
结帖率:87.5%
收藏
已结贴  问题点数:5 回复次数:4 
求解答,这个问题怎么解决?
    case 2:{
        printf("输入姓名:\n");
        scanf("%s",name1);
        for(i=1;i<=n;i++)
            if(strcmp(student[i].name,name1)==0){(老是说这里有问题,“error C2664: 'strcmp' : cannot convert parameter 2 from 'int [10]' to 'const char *'
        Types pointed to are unrelated; conversion requires reinterpret_cast, C-style cast or function-style cast,怎么解决啊?)
                printf("该生原来信息:\n");
                printf("%d  %s",student[i].number,student[i].name);
                for(j=1;j<=7;j++)
                    printf("%f",student[i].score[j]);
                printf("输入改后的信息:\n");
                printf("学号 姓名 高数 工图 英语 C语言 航概 体育 思修 \n");
                scanf("%d%s",&student[i].number,student[i].name);
                for(j=1;j<=7;j++)
                    scanf("%f",&student[i].score[j]);
            
            printf("修改完毕!\n");
            break;
            }
           }
搜索更多相关主题的帖子: 信息 姓名 conversion 
2012-12-16 00:10
冯jungle
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2012-12-16
收藏
得分:0 
回复 2楼 yuccn
是char 型的啊,但是就还是那个问题,看了好多遍都查不出问题在哪里,伤脑筋啊!
2012-12-17 22:50
冯jungle
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2012-12-16
收藏
得分:0 
回复 5楼 wp231957
但是必须初始化嘛?我要的是用户输入啊,这怎么办?
2012-12-18 12:47
冯jungle
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2012-12-16
收藏
得分:0 
回复 8楼 mmmmmmmmmmmm
好,下面都是:
// 大作业.cpp : Defines the entry point for the console application.
//

#include "stdafx.h"
#include "string.h"



void add();
void change();
void look();   
void sum();
void output();
void deal();

struct Student
{
    int number;
    char name[10];
    float score[7];
}student[20];
int m,n,i,j,k,num1;
char name1[10];
FILE *Grade;




int main(int argc, char* argv[])
{
   
    printf("                     学生成绩管理系统\n");
    printf("*******************************************************************\n");
   
   
    Grade=fopen("grade1.txt","w");
   

    printf("输入学生人数:\n");
    scanf("%d",&n);
    printf("学号 姓名 高数 工图 英语 C语言 航概 体育 思修 \n");
    for(i=1;i<=n;i++){
        
        printf("\nNumber:\n");
        scanf("%d",&student[i].number);
        printf("Name:\n");
        scanf("%s",student[i].name);
        printf("Grade:\n");
        for(j=1;j<8;j++){
            scanf("%f",&(student[i].score[j]));
            
        }
        deal();
    }
    printf("\n");
    printf("1---增加信息\n2---修改信息\n3---查询成绩\n4---成绩统计\n5---成绩输出\n6---退出系统\n请选择:");
    int choice;
    scanf("%d",&choice);
    while(choice!=6)
    {
        switch(choice)
        {
        case 1:add();
        case 2:change();
        case 3:look();
        case 4:sum();
        case 5:output();
        }
    }
    printf("Hello World!\n");
    return 0;
}
#include "stdafx.h"
#include "string.h"

extern  m,n,i,j,k,num1,name1[10];
struct Student
{
    int number;
    char name[10];
    float score[7];
}student[20];
extern Student student[20];
FILE *Grade;


void change()
{
    printf("选择修改方式:\n");
    printf("1--根据学号修改信息\n2--根据姓名修改信息\n");
    scanf("%d",&k);
    switch(k)
    {
    case 1:{
        printf("输入学号:\n");
        scanf("%d",&num1);
        for(i=1;i<=n;i++)
            if(student[i].number=num1){
                printf("该学生原来的信息:\n");
                printf("%d  %s  ",student[i].number,student[i].name);
                for(j=1;j<=7;j++)
                    printf("%f",student[i].score[j]);
                printf("学号 姓名 高数 工图 英语 C语言 航概 体育 思修 \n");
                printf("输入改后的信息:\n");
                scanf("%d%s",&student[i].number,student[i].name);
                for(j=1;j<=7;j++)
                    scanf("%d",&(student[i].score[j]));
                printf("修改完毕!\n");
                break;
            }
           }
    case 2:{
        printf("输入姓名:\n");
        scanf("%s",name1);
        for(i=1;i<=n;i++)
            if(strcmp(student[i].name,name1)==0){
                printf("该生原来信息:\n");
                printf("%d  %s",student[i].number,student[i].name);
                for(j=1;j<=7;j++)
                    printf("%f",student[i].score[j]);
                printf("输入改后的信息:\n");
                printf("学号 姓名 高数 工图 英语 C语言 航概 体育 思修 \n");
                scanf("%d%s",&student[i].number,student[i].name);
                for(j=1;j<=7;j++)
                    scanf("%f",&student[i].score[j]);
            
            printf("修改完毕!\n");
            break;
            }
           }
    }
}

        
           


2012-12-18 22:54
冯jungle
Rank: 1
等 级:新手上路
帖 子:24
专家分:0
注 册:2012-12-16
收藏
得分:0 
回复 10楼 mmmmmmmmmmmm
add.rar (701 Bytes)
change.rar (958 Bytes)
大作业.rar (1.1 KB)
嗯,好吧;
2012-12-18 23:44
快速回复:求解答,这个问题怎么解决?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015675 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved