|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
下面程序有七处错误,麻烦哪位大神给看一下 程序行后面的句子是我自己写的答案,但是不全,如果有错误,希望大神给指出
注:函数strcmp比较两个字符串,如果相同就返回0,否则值就不等于0
#include <stdlib.h>
#include <stdia.h>
#include <string.h>
int main(int argc, char *argv) { argv前面两个**
FILE *fp;
char *key = "hugo";
char *fileName = argv[1];
char s[100];
double *value = 0.0;
int zeilen == 0; 0前面一个=
//Sicherheitsabfrage:
if (argc < 2) {
printf("Fehler: Falsche Anzahl an Konsolenargumenten!");
ret 1; 改为return 1
}
/Datei öffnen:
fp = open (fileName, "r");
//Sicherheitsabfrage:
if(!fp) {
printf("Datei kann nicht geoeffnet werden");
return 1;
}
/*Anzahl der Zeilen lesen:*/
fscanf (FILE, "%d\n", &zeilen);
//Keys und Values verarbeiten;
for (int i=0; i < zeilen; i++)
{
fscanf (fp,"%s %lf\n",s,&value);
prints ("%s %lf\n",s,*value); 改为printf
if(strcmp(s,key) = 0) { //vergleichen, ob Strings identisch sind 0前面两个==
fclose (fp) ,
break;
}
}
//Value ausschreiben;
printf ("Der gesuchte Wert entspricht %lff ", value ); 改为%lf
return 0;
}
- #include <stdlib.h>
- #include <stdia.h>
- #include <string.h>
- int main(int argc, char *argv) { argv前面两个**
- FILE *fp;
- char *key = "hugo";
- char *fileName = argv[1];
- char s[100];
- double *value = 0.0; //指针没有小数值,要么double value = 0.0; 要么 double* value = 0;
- int zeilen == 0; 0前面一个=
- //Sicherheitsabfrage:
- if (argc < 2) {
- printf("Fehler: Falsche Anzahl an Konsolenargumenten!");
- ret 1; 改为return 1
- }
- /Datei öffnen:
- fp = open (fileName, "r"); //C语言中没有名为 open 的库函数,改为 fopen
-
- //Sicherheitsabfrage:
- if(!fp) {
- printf("Datei kann nicht geoeffnet werden");
- return 1;
- }
- /*Anzahl der Zeilen lesen:*/
- fscanf (FILE, "%d\n", &zeilen);
- //Keys und Values verarbeiten;
- for (int i=0; i < zeilen; i++)
- {
- fscanf (fp,"%s %lf\n",s,&value); //如果上面是 double value则这里不用改,如果上面是double* value 这里改为 value(不需要取址符)
- prints ("%s %lf\n",s,*value); 改为printf //同理,如果上面是double value,改为 value;如果上面是double* value 则这里不用改
- if(strcmp(s,key) = 0) { //vergleichen, ob Strings identisch sind 0前面两个==
- fclose (fp) ,
- break;
- }
- }
- //Value ausschreiben;
- printf ("Der gesuchte Wert entspricht %lff ", value ); 改为%lf //这里value也和上面要一致
- return 0;
- }
复制代码
|
|