C语言

#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAX_COLS 20
#define MAX_INPUT 1000
int read_column_numbers(int columns[], int max );
void rearrange( char output, char constinput,
int n_columns, int const columns[] );
int main (void)
{

int n_columns;
int columns[MAX_COLS];
char input[MAX_INPUT];
char output[MAX_INPUT];
n_columns=read_column_numbers( columns,MAX_COLS );
while( gets( input ) !=NULL)
{

	printf(" Original input : %s\n",input);
	rearrange( output,input, n_columns, columns );
	printf("Rearranged line: %s\n",output);
}
return EXIT_SUCCESS;

}
int read_column_numbers( int columns[], int max )
{

int num=0;
int ch;
while(num< max && scanf("%d",&columns[num])==1
	&& columns[num] >=0)
	num +=1;
if( num % 2 != 0)
{

	puts("Last column number is not paired.");
	exit (EXIT_FAILURE);
}
while( (ch=getchar()) != EOF && ch !='\n')
return num;

}
void rearrange( char *output, char const *input,
int n_columns, int const columns[])
{

int col;
int output_col;
int len;
len = strlen( input );
output_col=0;
for( col =0; col<n_columns;col +=2)
{

	int nchars =columns[col+1]-columns[col]+1;
	if(columns[col]>=len || output_col ==MAX_INPUT -1)
		break;
	if(output_col + nchars > MAX_INPUT -1)
		nchars=MAX_INPUT -output_col-1;
	strncpy ( output + output_col,input +columns[col],nchars);
	output_col +=nchars;
}
output[output_col]='\0';

}
一般提示
undefined reference to “***” 就是说明这个函数或者变量没有 定义或者声明 导致

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值