供参考:
//100,21,3950,7,8,3289,943,495,34134,343,209,47,2,7293,29,2723,843,392,24
//(1)
#include <stdio.h>
int main()
{
int i,k,a[30];
char c = '\0';
for (i = 0;c != '\n' ; i++)
scanf("%d%c", &a[i], &c);
for (k = i, i = 0; i < k; i++)
printf((i + 1) % 5 ? "%-7d" : "%-7d\n",a[i]);
return 0;
}
//(2)
#include <stdio.h>
int main()
{
int i,k,a[30];
char c = '\0';
for (i = 0;c != '\n' ; i++)
scanf("%d%c", &a[i], &c);
for (k = i, i = 0; i < k; i++)
printf((i + 1) % 5 ? "%7d" : "%7d\n",a[i]);
return 0;
}
//Machine learning is the term that refers to learning patterns in the data In other words
//(3)
#include <stdio.h>
int main()
{
int i = 0;
char str[16];
while (1)
{
scanf("%s", str);
i++;
printf(i % 5 ? "%-12s" : "%-12s\n", str);
if ((getchar()) == '\n') break;
}
return 0;
}
//(4)
#include <stdio.h>
int main()
{
int i = 0;
char str[16];
while (1)
{
scanf("%s", str);
i++;
printf(i % 5 ? "%12s" : "%12s\n", str);
if ((getchar()) == '\n') break;
}
return 0;
}
void SListPrint(SLTNode* plist)
{
SLTNode* cur = plist;
while (cur != NULL)
{
printf("%d->", cur->data);
cur = cur->next;
}
printf("NULL\n");
}
备注;在对每一个接口进行测试的时候,通过打印结果来观察测试接口的正确与否
每次插入前都要构造一个新结点,这一步模块化代码是不是和顺序表的插入前检查是否需要扩容很像!哈哈哈
SLTNode* BuySLTNode(SLTDataType x)
{
SLTNode* newnode = (SLTNode*)malloc(sizeof(SLTNode));
newnode->data = x;
newnode->next = NULL;
return newnode;
}
注意:返回类型是SLTNode*类型
私
这题看似简单,其实不然,……
非标准答案,仅供参考!
支持随意单词长度
#include<stdio.h>
#include<string.h>
void fun1(char *st, const char ch)
{
const char c[] = ", ";
char *p;
int n = 0 /* 单词个数 */ , len = strlen(st);
// int N = 1; // 总行数
int Hlen[5] = { 0 }; // 记录各列最长记录
int tmp;
int i = 0;
if (st[len - 1] == '\n')
{
st[len - 1] = '\0';
len--;
}
char s1[len + 1], s2[len + 1];
strcpy(s1, st);
strcpy(s2, st);
p = strtok(s1, c);
while (p)
{
tmp = strlen(p);
if (tmp > Hlen[i])
Hlen[i] = tmp;
n++;
p = strtok(NULL, c);
i++;
if (i == 5)
i = 0;
}
i = 0;
int fl = -1;
if (ch != 'l' && ch != 'L')
fl = 1;
p = strtok(s2, c);
while (p)
{
if (i == 0)
{
if (fl == -1)
printf("%*s", Hlen[i] * fl - 1, p);
else
printf("%*s", Hlen[i], p);
}
else
printf("%*s", fl * (Hlen[i] + 1), p);
p = strtok(NULL, c);
i++;
if (i == 5)
{
i = 0;
putchar('\n');
}
}
putchar('\n');
}
int main(void)
{
char c;
char s[10000] = { '\0' };
fgets(s, 9999, stdin);
printf("\n请选择左对齐输入字母L或l,右对齐输入其它任意一个字符:");
scanf("%c", &c);
fun1(s, c);
return 0;
}