谁能解决字符串问题
char ss[] = ''hao";char dd[]=".txt";
两个字符数组,连接在一起“hao.txt”,我想循环10次每次是“hao1.txt”,也就是说每次循环字符串是不一样的,不需要人输入自动循环;
比如:1:“hao.txt”
2:“ hao1.txt”
3:“hao2.txt”
4:“hao3.txt”
......
谁有方法解决这一的问题;
#include <stdio.h>
#include <string.h>
#define PREFIX "hao"
#define POSTFIX ".txt"
int main(void) {
char buf;
int i;
for( i = 0; i < 10; ++i ) {
if( i==0 ) sprintf(buf,"%s%s", PREFIX, POSTFIX);
else sprintf(buf,"%s%d%s", PREFIX, i+1, POSTFIX);
printf("%d:\t%s\n", i+1, buf);
}
return 0;
} for( i=0; i < 10; i++)
sprintf( buffer, "%s%d%s", ss, i, dd); 小甲鱼的二师兄 发表于 2014-10-9 17:44
如果我想用字符那? 仰望天上的光 发表于 2014-10-9 20:20
看不太懂;for 语句,还没看到那里~~
但好象和我想的差不多,就是在二个字串中间加一个字,这个字每次加1 haiouda 发表于 2014-10-9 20:32
看不太懂;for 语句,还没看到那里~~
但好象和我想的差不多,就是在二个字串中间加一个字,这个字每次 ...
那你会用什么循环语句呢?while还是do...while还是goto? 仰望天上的光 发表于 2014-10-9 20:34
那你会用什么循环语句呢?while还是do...while还是goto?
#include <stdio.h>
void main()
{
int i;
i == 1;
ggg: if(i<=10)
{
pintf("hao%d.txt",i);
i++;
goto ggg;
}
}
语法没有错语,但执行不了,不知道为什么,求指点~ 本帖最后由 haiouda 于 2014-10-9 21:18 编辑
haiouda 发表于 2014-10-9 20:41
#include
void main()
#include <stdio.h>
void main()
{
int i;
i = 1;
ggg: if(i<=10)
{
printf("hao%d.txt\n",i);
i++;
goto ggg;
}
printf("end\n");
}
搞了半天终于弄好了,可是为什么写成:i==1,就会出错,而写成 i=1;就可以? 赋值和等于区别在哪里呀?
仰望天上的光 发表于 2014-10-9 20:20
仰望天上的光 == 沐浴在阳光之下的人== 分享阳光的人 {:1_1:} haiouda 发表于 2014-10-9 21:14
搞了半天终于弄好了,可是为什么写成:i==1,就会出错,而写成 i=1;就可以? 赋值和等于区别在哪里呀? ...
i=1是把1赋值给i
i==1是判断i的值是否为1,如果为1,该表达式的值为“真”否该表达式的值为“假” 仰望天上的光 发表于 2014-10-9 21:45
i=1是把1赋值给i
i==1是判断i的值是否为1,如果为1,该表达式的值为“真”否该表达式的值为“假”
多谢,我也刚刚弄明白:ton:
页:
[1]