Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // в консоли после ./a.out необходимо ввести количество строчек, которые необходимо выписать(по умолчанию 10).
- // Потом необходимо ввести способ просмотра файла(по умолчанию-ручной ввод в консоль).
- // 1 - из файла внутри программы. 2 - из файла указывая его в консоли в виде <filename.txt
- // нюанс: пользуясь 2 и 3 способом необходимо ОБЯЗАТЕЛЬНО указывать кол-во строк
- #include <stdio.h>
- #include <string.h>
- int main (int argc, char *argv[]){
- int a, x, i=0, j=0, n, z;
- char *mas[200], c;
- char m[200][200];
- char a1[50];
- char *k;
- char str[50];
- int size=50;
- if (argv[1]==NULL){
- n=10;
- printf ("\nВы не ввели количество строчек и способ, поэтому настрйки по умолчанию.\nВведите строки, среди которых искать\n");
- while ((gets(m[j]))!=0){
- mas[i]=m[j];
- j++;
- i++;
- }
- }
- else {
- n= atoi(argv[1]);
- if (argv[2]==NULL){
- printf ("\nВы не ввели способ, поэтому настрйки способа по умолчанию.\nВведите строки, среди которых искать\n");
- while ((gets(m[j]))!=0){
- mas[i]=m[j];
- j++;
- i++;
- }
- }
- else {
- if (*argv[2]==49){
- printf("Введите название файла.");
- for(i=0; (c=getchar())!='\n'; i++){
- a1[i]=c;
- }
- FILE *f = fopen(a1, "r");
- if(f!=0){
- while (fgets (m[j], size, f) != NULL){
- mas[i]=m[j];
- j++;
- i++;
- }
- }
- else{
- printf ("файл не найден");
- return 0;
- }
- fclose(f);
- a=i-n;
- for (x=a; x<i; x++){
- printf ("%s", mas[x]);
- }
- printf ("\n");
- return(0);
- }
- else if(*argv[2]==50){
- while ((gets(m[j]))!=0){
- mas[i]=m[j];
- j++;
- i++;
- }
- }
- else {
- printf ("\nВведите строки, среди которых искать\n");
- while ((gets(m[j]))!=0){
- mas[i]=m[j];
- j++;
- i++;
- }
- }
- }
- }
- a=i-n;
- for (x=a; x<i; x++){
- printf ("%s\n", mas[x]);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement