c语言中关于sscanf函数的运用及%n的用法

http://acm.hdu.edu.cn/showproblem.php?pid=2564上面是题目,下面是解答代码。哪位能指点一下sscanf函数的运用及%n的用法#include"stdio.h" #include"ctype.h" #include"string.h" #define NM 200 char str[NM]; int main() { int n,k,t,l,num; char a[100],*p; scanf("%d尀n",&n); while(n--){ memset(str,0,sizeof(str)); gets(str);p=str; while(sscanf(p,"%s%n",a,&t)==1){//还是返回值和%n的使用牢记 printf("%c",toupper(a[0])); p+=t; } printf("尀n"); } return 0; }
2026年09月24日 21:12
有2个网友回答
网友(1):

sscanf的功能和scanf差不多,只是多了一个参数,该参数放于第一个,用来标识要被解析的字符串,相对于scanf来说,他其实就是你输入的字符串。懂了不char szText[1024] = "123 34.4";sscanf(szText, "%d %f", &a, &f);a 就等于123,f就是34.4f

网友(2):

scanf("%d",&n);%d表示接收一个整型数据到变量n里边%f浮点,%c字符…… stdio.h 里边包含了scanf这个函数。包含这个你用scanf才能正常工作