解题思路:
①:用c语言编写时,输出数字时不好控制应为不知道小数点后为多少位有效数字
②:所以把数字也用字符串存储
参考代码:
#include<stdio.h> void GetReal(char *R); void GetString(char *A); int main() { char R[100]; char A[100]; GetReal(R); //getchar(); GetString(A); printf("%s\n",R); printf("%s\n",A); return 0; } /*==============================*/ void GetReal(char *R) { printf("please input a number:\n"); scanf("%s",R); } /*==============================*/ void GetString(char *A) { printf("please input a string:\n"); scanf("%s",A); //gets(A);/*用gets提交不对*/ }
解题思路二:
①:用c++写的话输出不用考虑小数有效位数问题,也就是不会在后面加零
#include<iostream> using namespace std; void GetReal(double *R); void GetString(char *A); int main() { double R; char A[100]; GetReal(&R); GetString(A); cout<<R<<endl; cout<<A<<endl; return 0; } /*------------------------------*/ void GetReal(double *R) { cout<<"please input a number:"<<endl; cin>>(*R); } void GetString(char *A) { cout<<"please input a string:"<<endl; cin>>A; }
别忘点赞哦-.-
0.0分
26 人评分
#include<stdio.h> void GetReal(double *px) { printf("please input a number:\n"); scanf("%lf", px); } void GetString(char *str) { printf("please input a string:\n"); scanf("%s",str); } int main() { double x; char str[100]; double *px = &x; GetReal(px); GetString(str); printf("%.2lf\n", x); printf("%s\n", str); return 0; }
为啥我这个格式错误 #include<stdio.h> void GetReal(char *a) { printf("please input a number:\n"); scanf("%s",a); } void GetString(char *s) { printf("please input a string:\n"); scanf("%s",s); } void main() { char a[100],s[100]; GetReal(a); GetString(s); printf("%s\n",a); printf("%s\n",s); }
镜中人 2022-01-19 11:45:06 |
我也是格式错误
Luftmensch 2022-02-10 18:57:33 |
不要复制题目中的"please input a number: "它这个中间有两个空格
KenHe 2022-02-15 14:43:50 |
哈哈哈坑爹玩意
董展博 2022-04-17 16:40:14 |
无语=-=,交5次才发现,人都快傻了
#include <stdio.h> #include <stdlib.h> #include <string.h> void GetReal(char *n){ printf("please input a number:\n"); scanf("%s",n); } void GetString(char *a){ printf("please input a string:\n"); scanf("%s",a); } int main() { int i; char a[128],n[128]; GetReal(n); GetString(a); printf("%s\n",n); printf("%s\n",a); return 0; } 为什么我的就是格式错误呢
小黑 2020-10-17 21:01:00 |
输入,输出:一个实数(float或double)和一个字符串(char)
Luftmensch 2022-02-10 18:58:38 |
不要复制题目中的"please input a number: "它这个中间有两个空格
#include<stdio.h> void GetReal(char *R); void GetString(char *S); int main() { char R[100]; char S[100]; GetReal(R); GetString(S); printf("please input a number:\n"); printf("please input a string:\n"); printf("%s\n",R); printf("%s\n",S); return 0; } void GetReal(char *R) { scanf("%s",R); } void GetString(char *S) { scanf("%s",S); } 我结合题目要求修改了一下,这个C语言版本是正确的。
#include <stdio.h> /* run this program using the console pauser or add your own getch, system("pause") or input loop */ void GetReal(char b[]){ printf("please input a number:\n"); gets(b); } void GetString(char a[]){ printf("please input a string:\n"); gets(a); //可以用gets,提交过了,满分 } int main(){ char b1[100]; char a1[100]; GetReal(b1); GetString(a1); printf("%s\n",b1); printf("%s\n",a1); return 0; }
#include<stdio.h> void GetReal(double r){ double a; scanf("%lf",&a); } void GetString(char s){ char c; scanf("%s",&c); } int main(){ double r; char s; printf(" please input a number:\n"); printf("please input a string:\n"); GetReal(r); GetString(s); printf("%f\n",r); printf("%s\n",s); return 0; } 我想问问要是这样写哪里不对呢?
李丹 2019-03-19 09:07:06 |
不要复制题目中的please input a string:,中间会多一个空格