逍遥 发表于 2014-10-9 17:25:11

谁能解决字符串问题

char ss[] = ''hao";
char dd[]=".txt";
两个字符数组,连接在一起“hao.txt”,我想循环10次每次是“hao1.txt”,也就是说每次循环字符串是不一样的,不需要人输入自动循环;
比如:1:“hao.txt”
          2:“ hao1.txt”
          3:“hao2.txt”
          4:“hao3.txt”
             ......
谁有方法解决这一的问题;

仰望天上的光 发表于 2014-10-9 17:25:12

#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;
}

小甲鱼的二师兄 发表于 2014-10-9 17:44:02

for( i=0; i < 10; i++)
    sprintf( buffer, "%s%d%s", ss, i, dd);

逍遥 发表于 2014-10-9 20:11:32

小甲鱼的二师兄 发表于 2014-10-9 17:44


如果我想用字符那?

haiouda 发表于 2014-10-9 20:32:23

仰望天上的光 发表于 2014-10-9 20:20


看不太懂;for 语句,还没看到那里~~

但好象和我想的差不多,就是在二个字串中间加一个字,这个字每次加1

仰望天上的光 发表于 2014-10-9 20:34:57

haiouda 发表于 2014-10-9 20:32
看不太懂;for 语句,还没看到那里~~

但好象和我想的差不多,就是在二个字串中间加一个字,这个字每次 ...

那你会用什么循环语句呢?while还是do...while还是goto?

haiouda 发表于 2014-10-9 20:41:16

仰望天上的光 发表于 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:14:28

本帖最后由 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;就可以? 赋值和等于区别在哪里呀?

haiouda 发表于 2014-10-9 21:30:36

仰望天上的光 发表于 2014-10-9 20:20


仰望天上的光 == 沐浴在阳光之下的人== 分享阳光的人      {:1_1:}

仰望天上的光 发表于 2014-10-9 21:45:49

haiouda 发表于 2014-10-9 21:14
搞了半天终于弄好了,可是为什么写成:i==1,就会出错,而写成 i=1;就可以? 赋值和等于区别在哪里呀? ...

i=1是把1赋值给i
i==1是判断i的值是否为1,如果为1,该表达式的值为“真”否该表达式的值为“假”

haiouda 发表于 2014-10-9 21:59:58

仰望天上的光 发表于 2014-10-9 21:45
i=1是把1赋值给i
i==1是判断i的值是否为1,如果为1,该表达式的值为“真”否该表达式的值为“假”

多谢,我也刚刚弄明白:ton:
页: [1]
查看完整版本: 谁能解决字符串问题